import Vue from "vue";
import App from "./App.vue";
import createRouter from "./router.js";
import createStore from "./store.js";

// new Vue({
//   render: (h) => h(App), // h=> createElement _c
// }).$mount("#app");
// 修改入口： 服务器渲染时，必须保证每个人访问的vue实例是不一样的， 所以必须写一个方法来创建

// 入口改装成函数， 目的是服务端渲染时， 每次访问的时候都会通过这 个工厂函数返回一个全新的实例，  保证每个人访问都可以拿到自己的实例
export default () => {
  const router = createRouter();
  const store = createStore();
  const app = new Vue({
    router,
    store,
    render: (h) => h(App),
  });
  return { app, router, store };
};
